<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- /fasttmp/mkdist-qt-4.3.5-1211793125/qtopia-core-opensource-src-4.3.5/tools/qdbus/src/qdbuserror.cpp -->
<head>
  <title>Qt 4.3: QDBusError Class Reference</title>
  <link href="classic.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="left" valign="top" width="32"><a href="http://www.trolltech.com/products/qt"><img src="images/qt-logo.png" align="left" width="32" height="32" border="0" /></a></td>
<td width="1">&nbsp;&nbsp;</td><td class="postheader" valign="center"><a href="index.html"><font color="#004faf">Home</font></a>&nbsp;&middot; <a href="classes.html"><font color="#004faf">All&nbsp;Classes</font></a>&nbsp;&middot; <a href="mainclasses.html"><font color="#004faf">Main&nbsp;Classes</font></a>&nbsp;&middot; <a href="groups.html"><font color="#004faf">Grouped&nbsp;Classes</font></a>&nbsp;&middot; <a href="modules.html"><font color="#004faf">Modules</font></a>&nbsp;&middot; <a href="functions.html"><font color="#004faf">Functions</font></a></td>
<td align="right" valign="top" width="230"><a href="http://www.trolltech.com"><img src="images/trolltech-logo.png" align="right" width="203" height="32" border="0" /></a></td></tr></table><h1 align="center">QDBusError Class Reference<br /><sup><sup>[<a href="qtdbus.html">QtDBus</a> module]</sup></sup></h1>
<p>The QDBusError class represents an error received from the D-Bus bus or from remote applications found in the bus. <a href="#details">More...</a></p>
<pre> #include &lt;QDBusError&gt;</pre><p>This class was introduced in Qt 4.2.</p>
<ul>
<li><a href="qdbuserror-members.html">List of all members, including inherited members</a></li>
</ul>
<a name="public-types"></a>
<h3>Public Types</h3>
<ul>
<li><div class="fn"/>enum <b><a href="qdbuserror.html#ErrorType-enum">ErrorType</a></b> { NoError, Other, Failed, NoMemory, ..., UnknownObject }</li>
</ul>
<a name="public-functions"></a>
<h3>Public Functions</h3>
<ul>
<li><div class="fn"/>bool <b><a href="qdbuserror.html#isValid">isValid</a></b> () const</li>
<li><div class="fn"/>QString <b><a href="qdbuserror.html#message">message</a></b> () const</li>
<li><div class="fn"/>QString <b><a href="qdbuserror.html#name">name</a></b> () const</li>
<li><div class="fn"/>ErrorType <b><a href="qdbuserror.html#type">type</a></b> () const</li>
</ul>
<a name="static-public-members"></a>
<h3>Static Public Members</h3>
<ul>
<li><div class="fn"/>QString <b><a href="qdbuserror.html#errorString">errorString</a></b> ( ErrorType <i>error</i> )</li>
</ul>
<a name="details"></a>
<hr />
<h2>Detailed Description</h2>
<p>The QDBusError class represents an error received from the D-Bus bus or from remote applications found in the bus.</p>
<p>When dealing with the D-Bus bus service or with remote applications over D-Bus, a number of error conditions can happen. This error conditions are sometimes signalled by a returned error value or by a QDBusError.</p>
<p>C++ and Java exceptions are a valid analogy for D-Bus errors: instead of returning normally with a return value, remote applications and the bus may decide to throw an error condition. However, the <a href="qtdbus.html">QtDBus</a> implementation does not use the C++ exception-throwing mechanism, so you will receive QDBusErrors in the return reply (see <a href="qdbusreply.html#error">QDBusReply::error</a>()).</p>
<p>QDBusError objects are used to inspect the error name and message as received from the bus and remote applications. You should not create such objects yourself to signal error conditions when called from D-Bus: instead, use <a href="qdbusmessage.html#createError">QDBusMessage::createError</a>() and <a href="qdbusconnection.html#send">QDBusConnection::send</a>().</p>
<p>See also <a href="qdbusconnection.html#send">QDBusConnection::send</a>(), <a href="qdbusmessage.html">QDBusMessage</a>, and <a href="qdbusreply.html">QDBusReply</a>.</p>
<hr />
<h2>Member Type Documentation</h2>
<h3 class="fn"><a name="ErrorType-enum"></a>enum QDBusError::ErrorType</h3>
<p>In order to facilitate verification of the most common D-Bus errors generated by the D-Bus implementation and by the bus daemon itself, <a href="qdbuserror.html">QDBusError</a> can be compared to a set of pre-defined values:</p>
<p><table border="1" cellpadding="2" cellspacing="1" width="100%">
<tr><th width="25%">Constant</th><th width="15%">Value</th><th width="60%">Description</th></tr>
<tr><td valign="top"><tt>QDBusError::NoError</tt></td><td align="center" valign="top"><tt>0</tt></td><td valign="top"><a href="qdbuserror.html">QDBusError</a> is invalid (i.e&#x2e;, the call succeeded)</td></tr>
<tr><td valign="top"><tt>QDBusError::Other</tt></td><td align="center" valign="top"><tt>1</tt></td><td valign="top"><a href="qdbuserror.html">QDBusError</a> contains an error that is one of the well-known ones</td></tr>
<tr><td valign="top"><tt>QDBusError::Failed</tt></td><td align="center" valign="top"><tt>2</tt></td><td valign="top">The call failed (<tt>org.freedesktop.DBus.Error.Failed</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::NoMemory</tt></td><td align="center" valign="top"><tt>3</tt></td><td valign="top">Out of memory (<tt>org.freedesktop.DBus.Error.NoMemory</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::ServiceUnknown</tt></td><td align="center" valign="top"><tt>4</tt></td><td valign="top">The called service is not known (<tt>org.freedesktop.DBus.Error.ServiceUnknown</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::NoReply</tt></td><td align="center" valign="top"><tt>5</tt></td><td valign="top">The called method did not reply within the specified timeout (<tt>org.freedesktop.DBus.Error.NoReply</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::BadAddress</tt></td><td align="center" valign="top"><tt>6</tt></td><td valign="top">The address given is not valid (<tt>org.freedesktop.DBus.Error.BadAddress</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::NotSupported</tt></td><td align="center" valign="top"><tt>7</tt></td><td valign="top">The call/operation is not supported (<tt>org.freedesktop.DBus.Error.NotSupported</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::LimitsExceeded</tt></td><td align="center" valign="top"><tt>8</tt></td><td valign="top">The limits allocated to this process/call/connection exceeded the pre-defined values (<tt>org.freedesktop.DBus.Error.LimitsExceeded</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::AccessDenied</tt></td><td align="center" valign="top"><tt>9</tt></td><td valign="top">The call/operation tried to access a resource it isn't allowed to (<tt>org.freedesktop.DBus.Error.AccessDenied</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::NoServer</tt></td><td align="center" valign="top"><tt>10</tt></td><td valign="top"><i>Documentation doesn't say what this is for</i> (<tt>org.freedesktop.DBus.Error.NoServer</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::Timeout</tt></td><td align="center" valign="top"><tt>11</tt></td><td valign="top"><i>Documentation doesn't say what this is for or how it's used</i> (<tt>org.freedesktop.DBus.Error.Timeout</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::NoNetwork</tt></td><td align="center" valign="top"><tt>12</tt></td><td valign="top"><i>Documentation doesn't say what this is for</i> (<tt>org.freedesktop.DBus.Error.NoNetwork</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::AddressInUse</tt></td><td align="center" valign="top"><tt>13</tt></td><td valign="top"><a href="qdbusserver.html">QDBusServer</a> tried to bind to an address that is already in use (<tt>org.freedesktop.DBus.Error.AddressInUse</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::Disconnected</tt></td><td align="center" valign="top"><tt>14</tt></td><td valign="top">The call/process/message was sent after <a href="qdbusconnection.html">QDBusConnection</a> disconnected (<tt>org.freedesktop.DBus.Error.Disconnected</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::InvalidArgs</tt></td><td align="center" valign="top"><tt>15</tt></td><td valign="top">The arguments passed to this call/operation are not valid (<tt>org.freedesktop.DBus.Error.InvalidArgs</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::UnknownMethod</tt></td><td align="center" valign="top"><tt>16</tt></td><td valign="top">The method called was not found in this object/interface with the given parameters (<tt>org.freedesktop.DBus.Error.UnknownMethod</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::TimedOut</tt></td><td align="center" valign="top"><tt>17</tt></td><td valign="top"><i>Documentation doesn't say..&#x2e;</i> (<tt>org.freedesktop.DBus.Error.TimedOut</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::InvalidSignature</tt></td><td align="center" valign="top"><tt>18</tt></td><td valign="top">The type signature is not valid or compatible (<tt>org.freedesktop.DBus.Error.InvalidSignature</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::UnknownInterface</tt></td><td align="center" valign="top"><tt>19</tt></td><td valign="top">The interface is not known</td></tr>
<tr><td valign="top"><tt>QDBusError::InternalError</tt></td><td align="center" valign="top"><tt>20</tt></td><td valign="top">An internal error occurred (<tt>com.trolltech.QtDBus.Error.InternalError</tt>)</td></tr>
<tr><td valign="top"><tt>QDBusError::UnknownObject</tt></td><td align="center" valign="top"><tt>21</tt></td><td valign="top">The remote object could not be found.</td></tr>
</table></p>
<hr />
<h2>Member Function Documentation</h2>
<h3 class="fn"><a name="errorString"></a><a href="qstring.html">QString</a> QDBusError::errorString ( <a href="qdbuserror.html#ErrorType-enum">ErrorType</a> <i>error</i> )&nbsp;&nbsp;<tt> [static]</tt></h3>
<p>Returns the error name associated with error condition <i>error</i>.</p>
<p>This function was introduced in Qt 4.3.</p>
<h3 class="fn"><a name="isValid"></a>bool QDBusError::isValid () const</h3>
<p>Returns true if this is a valid error condition (i.e&#x2e;, if there was an error), otherwise false.</p>
<h3 class="fn"><a name="message"></a><a href="qstring.html">QString</a> QDBusError::message () const</h3>
<p>Returns the message that the callee associated with this error. Error messages are implementation defined and usually contain a human-readable error code, though this does not mean it is suitable for your end-users.</p>
<h3 class="fn"><a name="name"></a><a href="qstring.html">QString</a> QDBusError::name () const</h3>
<p>Returns this error's name. Error names are similar to D-Bus Interface names, like <tt>org.freedesktop.DBus.InvalidArgs</tt>.</p>
<p>See also <a href="qdbuserror.html#type">type</a>().</p>
<h3 class="fn"><a name="type"></a><a href="qdbuserror.html#ErrorType-enum">ErrorType</a> QDBusError::type () const</h3>
<p>Returns this error's <a href="qdbuserror.html#ErrorType-enum">ErrorType</a>.</p>
<p>See also <a href="qdbuserror.html#ErrorType-enum">ErrorType</a>.</p>
<p /><address><hr /><div align="center">
<table width="100%" cellspacing="0" border="0"><tr class="address">
<td width="30%">Copyright &copy; 2008 <a href="trolltech.html">Trolltech</a></td>
<td width="40%" align="center"><a href="trademarks.html">Trademarks</a></td>
<td width="30%" align="right"><div align="right">Qt 4.3.5</div></td>
</tr></table></div></address></body>
</html>
